<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<properties>
		<!-- Common properties; all module need to be compiled by using UTF-8 -->
		<source.encoding>UTF-8</source.encoding>
		<reporting.encoding>UTF-8</reporting.encoding>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

		<!-- -->
		<jdk.version>1.8</jdk.version>

		<!-- Configure maven by executing test but not stopping if tests are wrong -->
		<maven.test.skip>true</maven.test.skip>
		<maven.test.failure.ignore>true</maven.test.failure.ignore>

		<!-- Spring version -->
		<spring.security.version>4.0.2.RELEASE</spring.security.version>
		<springframework.version>4.2.6.RELEASE</springframework.version>

		<!-- -->
		<commons.math.version>3.6</commons.math.version>
		<commons.pool.dbcp>1.4</commons.pool.dbcp>
		<commons.collection.version>3.2.2</commons.collection.version>
		<commons.io.version>2.4</commons.io.version>
		<commons-codec.version>1.10</commons-codec.version>
		<commons-lang.version>2.6</commons-lang.version>
		<commons-fileupload.version>1.3.1</commons-fileupload.version>
		<commons-beanutils.version>1.8.3</commons-beanutils.version>
		<commons.digester.version>2.1</commons.digester.version>
		<commons.el.version>1.0</commons.el.version>
		<commons.lang3.version>3.4</commons.lang3.version>

		<!-- Database -->
		<postgres.jdbc.driver.version>9.4.1208</postgres.jdbc.driver.version>
		<postgis.driver.version>1.3.3</postgis.driver.version>

		<!-- Versione di Hibernate -->
		<hibernate.validator.version>5.2.3.Final</hibernate.validator.version>
		<hibernate.core.version>5.1.2.Final</hibernate.core.version>
		<hibernate.spatial.version>5.1.2.Final</hibernate.spatial.version>
		<ehcache.core.version>2.6.11</ehcache.core.version>
		<hibernate.tools.version>4.3.2.Final</hibernate.tools.version>
		<org.geolatte.version>1.0.5</org.geolatte.version>

		<!-- Audit4j -->
		<audit4j.version>2.4.0-alpha3</audit4j.version>
		<audit4j-spring.version>2.4.0-alpha4</audit4j-spring.version>
		<audit4j-db.version>2.4.0</audit4j-db.version> <!-- 2.4.0-alpha1 -->

		<!-- Logging -->
		<logback.version>1.1.7</logback.version>
		<slf4j.version>1.7.21</slf4j.version>

		<!-- -->
		<javax.validation.api.version>1.1.0.Final</javax.validation.api.version>
		<junit.version>4.12</junit.version>
		<jts.version>1.13</jts.version>
		<org.aspectj.aspectjweaver.version>1.8.8</org.aspectj.aspectjweaver.version>
		<javax.transaction.version>1.1</javax.transaction.version>
		<jstl.version>1.2</jstl.version>
		<joda-time.version>2.9.2</joda-time.version>
		<paho.version>1.0.2</paho.version>
		<!-- Http -->
		<httpcomponents.version>4.5.1</httpcomponents.version>
		<!-- jackson -->
		<jackson.version>2.8.2</jackson.version>
		<!-- Solr -->
		<solr.solrj.version>4.5.1</solr.solrj.version>
		<opencsv.version>2.4</opencsv.version>
	</properties>

	<modelVersion>4.0.0</modelVersion>
	<groupId>it.ap.sa</groupId>
	<artifactId>AcquariumCore</artifactId>
	<name>Modulo Configurazioni</name>
	<version>0.0.1-SNAPSHOT</version>
	<description>Modulo Configurazioni</description>
	<inceptionYear>16/02/2016</inceptionYear>
	<organization>
		<name>Engineering Ingegneria Informatica</name>
		<url>www.eng.it</url>
	</organization>
	<developers>
		<developer>
			<name>Eng Acquarium Group</name>
			<organization>Engineering Ingegneria Informatica</organization>
			<url>www.eng.it</url>
			<roles>
				<role>Solution Architect</role>
			</roles>
		</developer>
	</developers>

	<dependencies>

		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>${jackson.version}</version>
		</dependency>
		<dependency>
			<groupId>org.json</groupId>
			<artifactId>json</artifactId>
			<version>20140107</version>
		</dependency>
		<dependency>
			<groupId>crosby.binary</groupId>
			<artifactId>osmpbf</artifactId>
			<version>1.2.1</version>
		</dependency>
		<dependency>
			<groupId>asm</groupId>
			<artifactId>asm-commons</artifactId>
			<version>3.3.1</version>
		</dependency>
		<dependency>
			<groupId>cglib</groupId>
			<artifactId>cglib-nodep</artifactId>
			<version>2.2</version>
		</dependency>
		<dependency>
			<groupId>javax.transaction</groupId>
			<artifactId>jta</artifactId>
			<version>${javax.transaction.version}</version>
		</dependency>
		<dependency>
			<groupId>jstl</groupId>
			<artifactId>jstl</artifactId>
			<version>${jstl.version}</version>
		</dependency>
		<dependency>
			<groupId>joda-time</groupId>
			<artifactId>joda-time</artifactId>
			<version>${joda-time.version}</version>
		</dependency>
		<dependency>
			<groupId>org.aspectj</groupId>
			<artifactId>aspectjweaver</artifactId>
			<version>${org.aspectj.aspectjweaver.version}</version>
		</dependency>
		<dependency>
			<groupId>com.vividsolutions</groupId>
			<artifactId>jts</artifactId>
			<version>${jts.version}</version>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junit.version}</version>
			<scope>test</scope>
		</dependency>

		<!-- Audit4j Dependencies -->
		<dependency>
			<groupId>org.audit4j</groupId>
			<artifactId>audit4j-core</artifactId>
			<version>${audit4j.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>javassist</artifactId>
					<groupId>javassist</groupId>
				</exclusion>
				<exclusion>
					<artifactId>servlet-api</artifactId>
					<groupId>javax.servlet</groupId>
				</exclusion>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-api</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.audit4j</groupId>
			<artifactId>audit4j-spring</artifactId>
			<version>${audit4j-spring.version}</version>
		</dependency>
		<dependency>
			<groupId>org.audit4j</groupId>
			<artifactId>audit4j-db</artifactId>
			<version>${audit4j-db.version}</version>
			<exclusions>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-api</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

		<!-- Common -->
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>${commons.io.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>junit</artifactId>
					<groupId>junit</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
			<version>${commons-codec.version}</version>
		</dependency>
		<dependency>
			<groupId>commons-lang</groupId>
			<artifactId>commons-lang</artifactId>
			<version>${commons-lang.version}</version>
		</dependency>
		<dependency>
			<groupId>commons-collections</groupId>
			<artifactId>commons-collections</artifactId>
			<version>${commons.collection.version}</version>
		</dependency>
		<dependency>
			<groupId>commons-fileupload</groupId>
			<artifactId>commons-fileupload</artifactId>
			<version>${commons-fileupload.version}</version>
		</dependency>
		<dependency>
			<groupId>commons-beanutils</groupId>
			<artifactId>commons-beanutils</artifactId>
			<version>${commons-beanutils.version}</version>
			<exclusions>
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>commons-digester</groupId>
			<artifactId>commons-digester</artifactId>
			<version>${commons.digester.version}</version>
			<exclusions>
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>commons-el</groupId>
			<artifactId>commons-el</artifactId>
			<version>${commons.el.version}</version>
			<exclusions>
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>${commons.lang3.version}</version>
		</dependency>
		<dependency>
			<groupId>commons-dbcp</groupId>
			<artifactId>commons-dbcp</artifactId>
			<version>${commons.pool.dbcp}</version>
		</dependency>

		<!-- Database -->
		<dependency>
			<groupId>org.postgresql</groupId>
			<artifactId>postgresql</artifactId>
			<version>${postgres.jdbc.driver.version}</version>
		</dependency>
		<dependency>
			<groupId>org.postgis</groupId>
			<artifactId>postgis-jdbc</artifactId>
			<version>${postgis.driver.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>postgresql</artifactId>
					<groupId>postgresql</groupId>
				</exclusion>
			</exclusions>
		</dependency>

		<!-- Hibernate -->
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-core</artifactId>
			<version>${hibernate.core.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>jboss-logging-annotations</artifactId>
					<groupId>org.jboss.logging</groupId>
				</exclusion>
				<exclusion>
					<artifactId>
						jboss-transaction-api_1.2_spec
					</artifactId>
					<groupId>org.jboss.spec.javax.transaction</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-tools</artifactId>
			<version>${hibernate.tools.version}</version>
			<scope>provided</scope>
			<exclusions>
				<exclusion>
					<artifactId>javassist</artifactId>
					<groupId>org.javassist</groupId>
				</exclusion>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-api</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-envers</artifactId>
			<version>${hibernate.core.version}</version>
		</dependency>
		<dependency>
			<groupId>net.sf.ehcache</groupId>
			<artifactId>ehcache-core</artifactId>
			<version>${ehcache.core.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>slf4j-api</artifactId>
					<groupId>org.slf4j</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-ehcache</artifactId>
			<version>${hibernate.core.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>jboss-logging</artifactId>
					<groupId>org.jboss.logging</groupId>
				</exclusion>
				<exclusion>
					<artifactId>jboss-logging-annotations</artifactId>
					<groupId>org.jboss.logging</groupId>
				</exclusion>
				<exclusion>
					<artifactId>ehcache-core</artifactId>
					<groupId>net.sf.ehcache</groupId>
				</exclusion>
				<exclusion>
					<groupId>org.hibernate</groupId>
					<artifactId>hibernate-core</artifactId>
				</exclusion>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-api</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-spatial</artifactId>
			<version>${hibernate.spatial.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>jboss-logging</artifactId>
					<groupId>org.jboss.logging</groupId>
				</exclusion>
				<exclusion>
					<artifactId>jboss-logging-annotations</artifactId>
					<groupId>org.jboss.logging</groupId>
				</exclusion>
				<exclusion>
					<artifactId>hibernate-core</artifactId>
					<groupId>org.hibernate</groupId>
				</exclusion>
				<exclusion>
					<artifactId>postgresql</artifactId>
					<groupId>postgresql</groupId>
				</exclusion>
				<exclusion>
					<artifactId>postgis-jdbc</artifactId>
					<groupId>org.postgis</groupId>
				</exclusion>
				<exclusion>
					<artifactId>jts</artifactId>
					<groupId>com.vividsolutions</groupId>
				</exclusion>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-api</artifactId>
				</exclusion>
				<exclusion>
					<groupId>org.geolatte</groupId>
					<artifactId>geolatte-geom</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-validator</artifactId>
			<version>${hibernate.validator.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>jboss-logging</artifactId>
					<groupId>org.jboss.logging</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-java8</artifactId>
			<version>${hibernate.core.version}</version>
		</dependency>
		<dependency>
			<groupId>javax.validation</groupId>
			<artifactId>validation-api</artifactId>
			<version>${javax.validation.api.version}</version>
		</dependency>

		<!-- Spring -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-core</artifactId>
			<version>${springframework.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>commons-logging</artifactId>
					<groupId>commons-logging</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-tx</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context-support</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-expression</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-test</artifactId>
			<version>${springframework.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>${springframework.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>commons-logging</artifactId>
					<groupId>commons-logging</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-beans</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jdbc</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-orm</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-aop</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-aspects</artifactId>
			<version>${springframework.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>aspectjweaver</artifactId>
					<groupId>org.aspectj</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.security</groupId>
			<artifactId>spring-security-config</artifactId>
			<version>${spring.security.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>spring-core</artifactId>
					<groupId>org.springframework</groupId>
				</exclusion>
			</exclusions>
		</dependency>

		<!-- Logging -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>log4j-over-slf4j</artifactId>
			<version>${slf4j.version}</version>
		</dependency>
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
			<version>${logback.version}</version>
			<exclusions>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-api</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-math3</artifactId>
			<version>${commons.math.version}</version>
		</dependency>
		<dependency>
			<groupId>org.eclipse.paho</groupId>
			<artifactId>org.eclipse.paho.client.mqttv3</artifactId>
			<version>${paho.version}</version>
		</dependency>
		<!-- boot -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
			<!-- <scope>test</scope> -->
			<version>1.3.3.RELEASE</version>
			<exclusions>
				<exclusion>
					<groupId>ch.qos.logback</groupId>
					<artifactId>logback-classic</artifactId>
				</exclusion>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-api</artifactId>
				</exclusion>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>log4j-over-slf4j</artifactId>
				</exclusion>
				<exclusion>
					<groupId>com.fasterxml.jackson.core</groupId>
					<artifactId>jackson-databind</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<!-- Http -->
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpmime</artifactId>
			<version>${httpcomponents.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpclient</artifactId>
			<version>${httpcomponents.version}</version>
			<exclusions>
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		    <!-- SOLR -->
		<dependency>
			<groupId>org.apache.solr</groupId>
			<artifactId>solr-solrj</artifactId>
			<version>${solr.solrj.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>wstx-asl</artifactId>
					<groupId>org.codehaus.woodstox</groupId>
				</exclusion>
				<exclusion>
					<artifactId>slf4j-api</artifactId>
					<groupId>org.slf4j</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
    		<groupId>org.geolatte</groupId>
    		<artifactId>geolatte-geom</artifactId>
    		<version>${org.geolatte.version}</version>
		</dependency>
		<dependency>
		    <groupId>au.com.bytecode</groupId>
		    <artifactId>opencsv</artifactId>
		    <version>${opencsv.version}</version>
		</dependency>
	</dependencies>
	<build>
		<sourceDirectory>src/main/java</sourceDirectory>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
				<includes>
					<include>**/*.*</include>
				</includes>
			</resource>
		</resources>
		<testSourceDirectory>src/test/java</testSourceDirectory>
		<testResources>
			<testResource>
				<directory>src/test/resources</directory>
				<includes>
					<include>**/*.*</include>
				</includes>
			</testResource>
		</testResources>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>2.4</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-release-plugin</artifactId>
				<version>2.5.2</version>
				<configuration>
					<scmCommentPrefix />
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.3</version>
				<configuration>
					<showWarnings>true</showWarnings>
					<showDeprecation>true</showDeprecation>
					<source>${jdk.version}</source>
					<target>${jdk.version}</target>
					<encoding>${source.encoding}</encoding>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<version>2.7</version>
				<configuration>
					<encoding>${reporting.encoding}</encoding>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.19</version>
				<configuration>
					<skipTests>${maven.test.skip}</skipTests>
				</configuration>
			</plugin>
		</plugins>
	</build>
	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>2.10.3</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-report-plugin</artifactId>
				<version>2.19</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<version>2.17</version>
				<reportSets>
					<reportSet>
						<reports>
							<report>checkstyle</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>
		</plugins>
	</reporting>
</project>